Micron Document
Livres et Wikis | Archives | Info


Comparison of code generation tools
layout: Wide Β· Narrow Β· Centered
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
top
Contents

β€’ References

──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

List of tools

| Product | Creator |
|---|---|
| Acceleo | Obeo |
| actifsource | actifsource GmbH |
| DMS Software Reengineering Toolkit | Semantic Designs |
| DRAKON | Stepan Mitkin |
| GeneXus | GeneXus |
| Genshi (templating language) | Edgewall Software |
| Jinja (Template engine) | Pocoo team |
| Kid (templating language) | Ryan Tomayko |
| Mako | Michael Bayer |
| MATLAB | The MathWorks, Inc. |
| M-Power | mrc |
| Microsoft Visual Studio LightSwitch | Microsoft |
| OpenMDX | |
| Scriptcase | Scriptcase Corp. |
| T4 | Microsoft |
| Umple | University of Ottawa |
| Velocity apache | Apache Software Foundation |
| WaveMaker | WaveMaker Inc. |

| Product | Platform | First public release |
|---|---|---|
| Acceleo | cross-platform (Java / Eclipse) | 2006 |
| actifsource | cross-platform (Java / Eclipse) | |
| DMS Software Reengineering Toolkit | Windows | 2001 |
| DRAKON | cross-platform (Tcl/Tk) | 2011 |
| GeneXus | Cross Platform (multiple) | 1991 |
| Genshi (templating language) | cross-platform (Python) | 2006-08-03 |
| Jinja (Template engine) | cross-platform (Python) | |
| Kid (templating language) | cross-platform (Python) | |
| Mako | cross-platform (Python) | |
| MATLAB | Windows, macOS, Linux | 1984 |
| M-Power | cross-platform (Java) | 2004 |
| Microsoft Visual Studio LightSwitch | Windows | 2011 |
| OpenMDX | cross-platform (Java) | 2004-01-28 |
| Scriptcase | PHP Unix, Linux, Windows, iOS | 2000 |
| T4 | Windows | 2005 |
| Umple | cross-platform (Java) | 2010 |
| Velocity apache | cross-platform (Java) | |
| WaveMaker | cross platform (aPaaS) | 2003 |

| Product | Latest stable version | Date of the latest stable version |
|---|---|---|
| Acceleo | 3.7.7 | 2018-12-04 |
| actifsource | 10.12.0 | 2021-02-22 |
| DMS Software Reengineering Toolkit | 2.0 | |
| DRAKON | 1.27 | 2016-03-10 |
| GeneXus | v17 | |
| Genshi (templating language) | 0.5.1 | 2008-07-09 |
| Jinja (Template engine) | 2.1.1 | |
| Kid (templating language) | 0.9.6 | 2006-12-20 |
| Mako | 1.1.2 | 2020-03-01 |
| MATLAB | 9.5 | 2018-09-12 |
| Microsoft Visual Studio LightSwitch | | 2011-07-26 |
| OpenMDX | 2.4 | 2009-03-26 |
| Scriptcase | 9.7 | 2022-04-13 |
| T4 | | 2010 |
| Umple | 1.35.0 | 2024-10-11 |
| Velocity apache | 1.6.2 | 2009-03-19 |
| WaveMaker | 10.0.3 | |

| Product | Software license |
|---|---|
| Acceleo | Eclipse Public |
| actifsource | Proprietary |
| DMS Software Reengineering Toolkit | Proprietary |
| DRAKON | Free |
| GeneXus | Proprietary |
| Jinja (Template engine) | BSD |
| Mako | MIT License |
| MATLAB | Proprietary |
| M-Power | Proprietary |
| Microsoft Visual Studio LightSwitch | Proprietary |
| OpenMDX | BSD |
| Scriptcase | Proprietary |
| T4 | MIT License |
| Umple | MIT License |
| Velocity apache | Apache License 2.0 |
| WaveMaker | Proprietary |

Technical features

| Name | Implementation Language | Active; Passive |
|---|---|---|
| Acceleo | Java | Active |
| actifsource | Java | Active |
| DMS Software Reengineering Toolkit | Several code generation DSLs (attribute… | Active |
| gSOAP | C / C++ | |
| Microsoft Visual Studio LightSwitch | C# / VB.NET | Active |
| Pro*C | | |
| Scriptcase | PHP, JavaScript | Active |
| Spring Roo | Java | Active |
| T4 | | Passive |
| Umple | Umple, Java, Javascript, PHP | Active |
| Velocity apache | Java | Passive |
| Yii2 Gii | PHP | Active |

| Name | Model |
|---|---|
| Acceleo | Tier |
| actifsource | Tier |
| DMS Software Reengineering Toolkit | DSLs represented as abstract syntax tre… |
| Microsoft Visual Studio LightSwitch | Tier |
| Pro*C | Inline |
| Scriptcase | Tier |
| Spring Roo | Tier |
| Umple | Tier |
| Velocity apache | Tier |
| Yii2 Gii | Tier |

| Name | Typical input |
|---|---|
| Acceleo | User-defined EMF based models (UML, Eco… |
| actifsource | User-defined Models |
| DMS Software Reengineering Toolkit | DSL instance |
| gSOAP | WSDL specifications |
| Microsoft Visual Studio LightSwitch | Database schema |
| Pro*C | SQL in C |
| Scriptcase | Complete application (Web/Mobile) and b… |
| Spring Roo | Java and automatically introspected pro… |
| T4 | T4 Template/ Text File |
| Umple | Umple code embedding one or more of Jav… |
| Velocity apache | Templates |
| Yii2 Gii | Database schema , user input, source co… |

| Name | Other input |
|---|---|
| Acceleo | Any EMF based input (Xtext DSLs, GMF gr… |
| actifsource | Import from UML, Ecore. |
| DMS Software Reengineering Toolkit | Well-formed output language code fragme… |
| Scriptcase | PHP, HTML, JavaScript, Ajax, |
| Spring Roo | Shell commands |
| Umple | Pure Umple code describing associations… |
| Velocity apache | Java driver code |

| Name | Typical output |
|---|---|
| Acceleo | Any textual language. |
| actifsource | Any textual language. |
| DMS Software Reengineering Toolkit | Any programming language (proven for C,… |
| gSOAP | C / C++ code that can be used to commun… |
| Microsoft Visual Studio LightSwitch | Complete Silverlight application (Deskt… |
| Pro*C | C |
| Scriptcase | Full Web application ready to use (PHP… |
| Spring Roo | Java (Full Web Application including Ja… |
| T4 | Any text format such as XML , XAML , C#… |
| Umple | Java, Python, C++, PHP, Ruby, ECcore, U… |
| Velocity apache | Any text |
| Yii2 Gii | Skeleton application, CRUD applications |

References

cite-note-codegeneration1-11. "Code Generation Network - Frequently Asked Questions". www.codegeneration.net. Archived from the original on 24 October 2007. Retrieved 15 January 2022.
cite-note-22. "Open source tools are available that make the task of developing passive code generators all but trivial. One such offering is Velocity from the Apache Software Foundation". My.safaribooksonline.com. Retrieved 24 January 2014.